package com.shambles.manage2.service;

import com.github.pagehelper.PageInfo;
import com.shambles.manage2.dto.CountNumDTO;
import com.shambles.manage2.dto.CountRateDTO;
import com.shambles.manage2.tkmapper.entity.Cost;
import com.shambles.manage2.tkmapper.entity.CostDetail;
import com.shambles.manage2.tkmapper.entity.MessageRequestVM;

import java.util.List;
import java.util.Map;

/**
 * @author yangsy
 * @description
 * @date 2020/03/01
 */
public interface CostService {

    /**
     * 费用填写接口
     *
     */
   void insertCost(Cost cost, List<CostDetail> detailList);

    /**
     * 费用查询接口
     * @param
     */
    PageInfo<Cost> querCostAll(MessageRequestVM messageRequestVM);

    void confirm(Cost cost);

    Map<String, List<Map<String, Object>>> count(Long startTime,Long endTime);

    CountNumDTO countNum(String filed,Long sTime, Long eTime);

    List<Map<String, Object>> countByUser(Long sTime, Long eTime);

    List<Map<String, Object>> countByUserDetail(String userGuid, Long sTime, Long eTime);

    List<Map<String, Object>> countByUsersDetail(Long sTime, Long eTime);

    CountRateDTO countRateByType(Long sTime, Long eTime);
}
